A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office files and records, but otherwise reserves all copyright rights whatsoever.
A. Field of the Invention
This invention relates generally to the subjects of data communication and networking between a host computer and a remotely located service endpoint in a communications network, such as a remote access concentrator connected to the host computer via an Asynchronous Transfer Mode (ATM) network.
More particularly, the invention relates to a method and apparatus for providing proxy service, route selection, and protocol conversion for service endpoints within a data networks that allows the host computer to set up logical connections with the service endpoint, using a protocol such as the Point-to-Point Protocol over Ethernet (PPPOE) protocol.
B. Description of Related Art and Advantages of the Invention
In order for two computers or other items of digital communications equipment to exchange data over a communications medium such as a wide area computer network, both computers have to transmit and receive data in accordance with a set of standards or procedures. These standards or procedures are known as xe2x80x9cprotocolsxe2x80x9d. As an example, a protocol may assign or designate specific bytes in a packet of data for containing certain information related to the transmission, such as the length of the data, address information, and control characters. Without such protocols, data would be unintelligible to the receiving computer and communication would not be possible. The establishment of protocols enables diverse equipment manufacturers to supply hardware to the public and build computer networks (such as the Internet), with the hardware and networks generally interoperable with equipment of other manufacturers.
The communication industry has standards bodies that formally adopt protocols. Other protocols are xe2x80x9cde factoxe2x80x9d industry standards, in that the early manufacturers adopt them and other companies selling similar equipment use the same techniques in order to be compatible. As technology advances new standards or protocols are proposed by people working in the industry, often in the form of a xe2x80x9cRequest for Commentxe2x80x9d document, also referred to in the art as an RFC. Persons skilled in the art are familiar with the RFC""s.
Over the last few years, new and faster networks have become available for connecting computers together over a local or wide area. Access to such networks to the general public from their personal computer is now becoming available. One example is wide area network access via Asynchronous Transfer Mode (ATM) over Asymmetrical Digital Subscriber Line (ADSL) service.
Companies such as 3Com Corporation, the assignee of the present invention, provide products to provide such access for host computer systems, such as general-purpose computers running a Windows(copyright) operating system from Microsoft Corporation. These products can take the form of adapter cards for a computer chassis, and external devices that plug into a port on the computer. Typically, the network routers use a special protocol for encapsulating lower lever protocols when providing wide area network access using ATM over ADSL. One such protocol is described in RFC 1483 xe2x80x9cMultiProtocol Encapsulation over ATM Adaptation Layer 5xe2x80x9d, by J. Heinanen, July 1993. The RFC 1483 document is fully incorporated by reference herein.
Other documents known to persons in the art and considered relevant to the present invention are RFC 1661xe2x80x94The Point to Point Protocol (PPP); RFC 2363xe2x80x94PPP over FUNI; RFC 2364xe2x80x94PPP over AAL5; and RFC 2516xe2x80x94Method of Transmitting PPP over Ethernet (PPPoE), and ADSL Forum Contribution, ADSLF-98-216xe2x80x94The Architecture of Extending PPP Connection Over Customer Premises LAN. The entire contents of each of the above documents are incorporated by reference herein.
In accordance with a representative embodiment of the invention, a device, such as an ADSL modem, acts as a proxy for service endpoints in a data network by responding to service endpoint advertisement messages pursuant to PPPoE, where the terminating equipment located at those service endpoints do not support PPPoE services. The device also supports route selection and transparent protocol conversion of network protocols so that a host computer connected to the device can communicate with the service endpoints where the service endpoints do not support the host computer""s network protocols (e.g., PPPoE). For example, the device converts PPPoE packets from the host computer to PPP packets and transmits and receives PPP packets with the service endpoint.
The invention bridges a huge gap in the existing telecommunications infrastructure. Specifically, the vast majority of the embedded base of product capable of acting as a service endpoint in the PPPoE protocol (such as the remote access server infrastructure providing dial-up Internet or corporate network access) does not presently support PPPoE protocol, whereas they do support PPP. By providing the proxy service in the device connecting the host computer to the service endpoint (such as a modem, e.g., ADSL modem), the host computer can obtain the benefits of PPPoE with virtually any potential device acting as a service endpoint, since the services provided by PPPoE are supported in the modem acting as a proxy for the service endpoint.
In a first aspect, the invention is a method of providing transparent support for a protocol for a remote service endpoint. The illustrated example is PPPoE, but the invention is not so limited. The method includes the feature of implementing a proxy engine (i.e., proxy agent) in a computing platform associated with a host computer system, such as in a modem connected to the host computer system. The proxy engine receives a message from the host computer system in accordance with the protocol, such as a request for identification of services or service endpoints. The message is intended to be transmitted to, and responded by, the remote service endpoint. The invention proceeds on the assumption that the remote service endpoint (e.g. legacy or older generation remote access concentrator) does not have the native support for the protocol. Thus, the proxy engine responds to the message for the remote service endpoint. Hence, the use of the term xe2x80x9cproxyxe2x80x9dxe2x80x94it acts on behalf of the remote service endpoint. The proxy engine implements a portion of the protocol that was designed or intended to be implemented by the remote service endpoint, such as responding to service inquiries and sending service acceptance messages. Accordingly, the proxy engine provides support for the protocol for the remote service endpoint in a manner transparent to said host computer system. The host computer thinks its messages are being responded to by the remote service endpoint, while in fact the proxy engine is responding to the messages.
In the illustrated embodiment, the proxy engine is implemented in a ADSL modem connected to the host computer system. The particular type of device in which the proxy engine is implemented is not particularly important.
In another aspect, the proxy engine further comprises a packet translation module or engine that converts packets in accordance with the protocol (e.g., PPPoE packets) to a second format in accordance with a second protocol, e.g., PPP packets. This would be performed typically where the remote service endpoint provides support for the PPP, but not the PPPoE.
In another aspect, the invention is a method for providing transparent support for a PPPoE (Point to Point Protocol over Ethernet) protocol for a remote service endpoint. The method comprises the steps of:
(1) sending a query message from a host computer to a data communications equipment (e.g. modem) connected to the host computer seeking the identification of all available service endpoints;
(2) the data communications equipment responding to the query and identifying a service endpoint that can be accessed by the data communications equipment;
(3) initiating a connection between the data communications equipment to the service endpoint;
(4) passing data between the host computer and the service endpoint; and
(5) terminating the connection to the service endpoint.
The data communications equipment, in this aspect, acts as the proxy agent or engine on behalf of the remote service endpoint. In the illustrated embodiment, the data communications equipment includes a packet translation module that converts packets from a first form (e.g., PPPoE) to a second protocol form (e.g., PPP).
In still another aspect, the invention comprises an ADSL modem that includes a proxy agent or engine for a remote service endpoint. The modem provides transparent support for the establishment and tear-down of logical connections between the host computer connected to the modem and a remote service endpoint.
These and still other aspects, advantages, and features of the invention will be more apparent from the following detailed description of a presently preferred embodiment of the invention.